如何使用 Repository 模式 |
您所在的位置:网站首页 › laravel handle函数 › 如何使用 Repository 模式 |
如何使用 Repository 模式
若将数据库逻辑都写在 Model 里,会造成 model 代码的臃肿难以维护,基于 SOLID 原则,我们应该使用 Repository 模式辅助 Model,将相关的数据库逻辑封装在不同的 Repository,方便后期项目的维护。 Laravel 框架版本Laravel 5.4.17 数据库逻辑在 CURD 中,CUR 比较稳定,但 Read 的部分则变化万千,大部分的数据库逻辑都在描述 Read 部分,若将数据库逻辑写在 Controller 或 Model 都不合适,会造成 Controller 或 Model 代码臃肿,如后难以维护。 Model使用 Repository 模式之后,Model 仅仅当成 Eloquent Class 即可,不需要包含数据库逻辑,仅保留如下部分: Property: 如 $table``$fillable .. Mutator: 包括 mutator 与 accessor Method: relation 类的方法,比如使用 hasMany() 与 belongsTo() 单一对应关系: hasOne belongsTo morphTo morphOne多个对应关系指的是使用以下关键词定义的关联模型: hasMany belongsToMany morphMany morphToMany morphedByMany因为 Eloquent 会根据数据库字段动态的产生 property 与 method等,若使用 Laravel IDE Helper ,会直接在Model加上 @property 与 @method 描述model的动态 proerty 与 method。 如下app\User.php中安装完Laravel IDE Helper后执行php artisan ide-helper:models后自动生成的内容: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |